home *** CD-ROM | disk | FTP | other *** search
/ Crosscountry USA Photo Safari / Crosscountry USA Photo Safari.iso / Data / cc_base / autoexec.c4 next >
Text File  |  2003-01-03  |  26KB  |  435 lines

  1. {
  2.   @BOOT
  3.   {
  4.  
  5.     resid r;
  6.     str gamepath;
  7.     str tmp;
  8.     str language;
  9.     
  10.     /* get the language */
  11.     language = CVarGetStr("language");
  12.     gamepath = CVarGetStr("gamepath");
  13.   
  14.     CVarSetInt("ForcePropNameLower", 1);
  15.     CVarSetInt("framerate", 16);
  16.     CVarSetInt("systemVideoClear", 0);
  17.     CVarSetInt("SCREEN_MAX_X", 640);
  18.     CVarSetInt("SCREEN_MAX_Y", 480);
  19.     
  20.     if(StrExact(CVarGetStr("SavedGameDir"), "")) {
  21.       CVarSetStr( "SavedGameDir", StrFormatStr("%s/saved_games/", gamepath) );
  22.     }
  23.     if(StrExact(CVarGetStr("SavedTravelLogDir"), "")) {
  24.       CVarSetStr( "SavedTravelLogDir", StrFormatStr("%s/saved_travel_logs/", gamepath) );
  25.     }
  26.     if(StrExact(CVarGetStr("SavedScenarioDir"), "")) {
  27.       CVarSetStr( "SavedScenarioDir", StrFormatStr("%s/scenario/", gamepath) );
  28.     }
  29.  
  30.     Log(LOG_BOOT, "\nLoading csv data\n");
  31.     
  32.     /* preload common scripts */
  33.     ResByName("common/set_night_day.c4");
  34.     ResByName("common/set_temperature.c4");
  35.     ResByName("common/set_cur_state.c4");
  36.     ResByName("common/set_rain_snow.c4");
  37.     ResByName("common/hide_show.c4");
  38.     ResByName("common/calc_accident.c4");
  39.     
  40.     /* preload csv data */
  41.  
  42.     ResTypeStart("","CSVData");
  43.     ResTypeAddProp("adorn_id"      , RESPROP_TYPE_RESID, 0);
  44.     ResTypeAddProp("city_id"       , RESPROP_TYPE_RESID, 0);
  45.     ResTypeAddProp("commodity_id"  , RESPROP_TYPE_RESID, 0);
  46.     ResTypeAddProp("fatigue_id"    , RESPROP_TYPE_RESID, 0);
  47.     RestypeAddProp("ferry_id"      , RESPROP_TYPE_RESID, 0);
  48.     ResTypeAddProp("help_id"       , RESPROP_TYPE_RESID, 0);
  49.     ResTypeAddProp("hunger_id"     , RESPROP_TYPE_RESID, 0);
  50.     ResTypeAddProp("postcard_id"   , RESPROP_TYPE_RESID, 0);
  51.     ResTypeAddProp("route_id"      , RESPROP_TYPE_RESID, 0);
  52.     ResTypeAddProp("state_id"      , RESPROP_TYPE_RESID, 0);
  53.     ResTypeAddProp("temperature_id", RESPROP_TYPE_RESID, 0);
  54.     ResTypeAddProp("version_id"    , RESPROP_TYPE_RESID, 0);
  55.     ResTypeEnd();
  56.  
  57.     /* sound volume */
  58.     ResTypeStart("","Options"); 
  59.     ResTypeAddProp("game_sound_volume",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  60.     ResTypeEnd();
  61.  
  62.     ResTypeStart("GuiTileMap","GuiCreditsTileMap");
  63.     ResTypeAddProp("state", RESPROP_TYPE_INT, 0);
  64.     ResTypeAddProp("timeout", RESPROP_TYPE_INT, 0);
  65.     ResTypeEnd();
  66.  
  67.     ResTypeStart("GuiAnimation","GuiSign");
  68.     ResTypeAddProp("signtext", RESPROP_TYPE_STR, 0);
  69.     ResTypeEnd();
  70.  
  71.     /* place to store game variables */
  72.     ResTypeStart("","Game");
  73.     ResTypeAddProp("game_num_players",               RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  74.     ResTypeAddProp("game_time_last_player_switch",   RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  75.     ResTypeAddProp("game_salary_per_commodity",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  76.     ResTypeAddProp("game_salary_bonus_commodity",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM); 
  77.     ResTypeAddProp("game_truck_lease_cost_per_day",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  78.     ResTypeAddProp("game_truck_meter_cost_per_mile", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);           
  79.     ResTypeAddProp("game_hotel_unit_cost",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  80.     ResTypeAddProp("game_distance_per_fuel_unit",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  81.     ResTypeAddProp("game_fuel_unit_cost",            RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  82.     ResTypeAddProp("game_fuel_unit_name",            RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  83.     ResTypeAddProp("game_tank_capacity",             RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  84.     ResTypeAddProp("game_cost_per_tire",             RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  85.     ResTypeAddProp("game_average_tire_life",         RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  86.     ResTypeAddProp("game_meal_cost",                 RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  87.     ResTypeAddProp("game_fatigue_limit",             RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  88.     ResTypeAddProp("game_fatigue_threshold",         RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  89.     ResTypeAddProp("game_hunger_limit",              RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  90.     ResTypeAddProp("game_hunger_threshold",          RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  91.     ResTypeAddProp("game_save_name",                 RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  92.     ResTypeAddProp("game_save_log_name",             RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  93.     ResTypeAddProp("game_business_open_hour",        RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  94.     ResTypeAddProp("game_business_close_hour",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  95.     ResTypeAddProp("game_tire_life_max",             RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  96.     ResTypeAddProp("game_chance_chains_pullover",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  97.     ResTypeAddProp("game_chance_speeding_pullover",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  98.     ResTypeAddProp("game_accident_threshold",        RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  99.     ResTypeAddProp("game_fine_chains",               RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  100.     ResTypeAddProp("game_time_between_accidents",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  101.     ResTypeAddProp("game_distance_unit",             RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  102.     ResTypeAddProp("game_distance_unit_square",      RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  103.     ResTypeAddProp("game_temperature_unit",          RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  104.     ResTypeAddProp("game_temperature_unit_short",    RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);  
  105.     ResTypeAddProp("game_time_taken_to_eat",         RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  106.     ResTypeAddProp("game_starting_cash_amount",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  107.     ResTypeAddProp("game_business_always_open",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  108.     
  109.     /* reference the player1 and 2 objects so they get saved with the game */
  110.     ResTypeAddProp("player_1_id",     RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  111.     ResTypeAddProp("player_2_id",     RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  112.       ResTypeAddProp("game_cur_player", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM);
  113.       
  114.     ResTypeEnd();
  115.  
  116.     /* place to store scenario information */
  117.     ResTypeStart("","Scenario");
  118.     ResTypeAddProp("scenario_start_date", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  119.     ResTypeAddProp("scenario_start_city", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  120.     ResTypeAddProp("scenario_end_city",   RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);    
  121.     ResTypeAddProp("scenario_start_state",RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  122.     ResTypeAddProp("scenario_end_state",  RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  123.       ResTypeAddProp("scenario_commodity_number_of", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  124.       ResTypeAddProp("scenario_commodity_name_1", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  125.       ResTypeAddProp("scenario_commodity_name_2", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  126.       ResTypeAddProp("scenario_commodity_name_3", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  127.       ResTypeAddProp("scenario_commodity_name_4", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  128.       ResTypeAddProp("scenario_commodity_name_5", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  129.       ResTypeAddProp("scenario_commodity_name_6", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);      
  130.       ResTypeAddProp("scenario_commodity_name_7", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);      
  131.       ResTypeAddProp("scenario_commodity_name_8", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);      
  132.       ResTypeAddProp("scenario_commodity_name_9", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);    
  133.       ResTypeAddProp("scenario_commodity_name_10", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);    
  134.       ResTypeAddProp("scenario_commodity_name_11", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);    
  135.       ResTypeAddProp("scenario_commodity_name_12", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);    
  136.       ResTypeAddProp("scenario_commodity_bonus", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  137.     ResTypeEnd();
  138.  
  139.     ResTypeStart("","ScenarioGroup");
  140.     ResTypeAddProp("player1_scenario_id", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  141.     ResTypeAddProp("player2_scenario_id", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  142.     ResTypeEnd();
  143.  
  144.     ResTypeStart("","Commodity");
  145.     ResTypeAddProp("commodity_name", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  146.     ResTypeAddProp("commodity_state", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  147.     ResTypeEnd();
  148.     
  149.     
  150.     /* place to store player specific things throughout the game */
  151.     ResTypeStart("","Player");
  152.  
  153.     /* PLAYER */
  154.       ResTypeAddProp("player_name",                RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  155.       ResTypeAddProp("player_last_meal",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  156.       ResTypeAddProp("player_last_slept",          RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  157.       ResTypeAddProp("player_hunger",              RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);      
  158.       ResTypeAddProp("player_fatigue",             RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  159.     ResTypeAddProp("player_destination_arrived", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  160.       ResTypeAddProp("player_where_to_sleep",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  161.       ResTypeAddProp("player_last_message",        RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);      
  162.     ResTypeAddProp("scenario_id",                RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  163.  
  164.       /* COMPASS AND NAV */
  165.       /*
  166.         Compass Direction:
  167.         N  = North
  168.         NE = North East
  169.         E  = East
  170.         SE = South East
  171.         S  = South
  172.         SW = South West
  173.         W  = West
  174.         NW = North West  
  175.       */
  176.       ResTypeAddProp("nav_compass_direction",  RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  177.       ResTypeAddProp("nav_cur_city",           RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  178.       ResTypeAddProp("nav_cur_state",          RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);      
  179.       ResTypeAddProp("nav_cur_city_row_num",   RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  180.       ResTypeAddProp("nav_cur_state_row_num",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);              
  181.     ResTypeAddProp("nav_can_eat",            RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  182.     ResTypeAddProp("nav_can_fuel",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  183.     ResTypeAddProp("nav_can_sleep",          RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  184.       ResTypeAddProp("nav_at_city",            RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  185.       ResTypeAddProp("nav_truck_x",            RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);          
  186.       ResTypeAddProp("nav_truck_y",            RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  187.       ResTypeAddProp("nav_commodity_to_load",  RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM);
  188.       ResTypeAddProp("nav_picture",            RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  189.       ResTypeAddProp("nav_sound",              RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  190.       ResTypeAddProp("nav_switch_player",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  191.       ResTypeAddProp("nav_picture_no_dash_flag",RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  192.       ResTypeAddProp("nav_getting_pulled_over",RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  193.       ResTypeAddProp("nav_accident_message",   RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  194.       ResTypeAddProp("nav_order_iqaluit",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  195.       ResTypeAddProp("nav_order_iqaluit_time",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  196.       ResTypeAddProp("nav_order_hawaii",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  197.       ResTypeAddProp("nav_order_hawaii_time",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  198.       ResTypeAddProp("nav_order_alaska",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  199.       ResTypeAddProp("nav_order_alaska_time",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    
  200.  
  201.       
  202.     /* MAP */
  203.     ResTypeAddProp("map_view_city",           RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  204.       ResTypeAddProp("map_view_state",          RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);      
  205.       ResTypeAddProp("map_view_city_row_num",   RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  206.       ResTypeAddProp("map_view_state_row_num",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM); 
  207.  
  208.     /* PHOTOS */
  209.     ResTypeAddProp("photo_current",      RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);   
  210.     ResTypeAddProp("photo_last_postcard", RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  211.     ResTypeAddProp("photo_last_commodity",RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);    
  212.     ResTypeAddProp("photo_last_city",     RESPROP_TYPE_STR, RESPROP_FLAG_STREAM); 
  213.       ResTypeAddProp("photo_city",         RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  214.       ResTypeAddProp("photo_postcard",     RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  215.       ResTypeAddProp("photo_commodity",    RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  216.       ResTypeAddProp("photo_current_type", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM);
  217.     
  218.       /* TIME */
  219.       ResTypeAddProp("time_now",              RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  220.       ResTypeAddProp("time_clock",            RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  221.       ResTypeAddProp("time_zone_real_offset", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  222.       ResTypeAddProp("time_zone_clock_offset",RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);     
  223.       ResTypeAddProp("time_zone_real",        RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  224.       ResTypeAddProp("time_zone_clock",       RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);           
  225.       ResTypeAddProp("time_last_sys",         RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  226.     ResTypeAddProp("time_business_open",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  227.       ResTypeAddProp("time_last_accident",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  228.       
  229.       /* TRAVEL LOG */
  230.       ResTypeAddProp("travel_log", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  231.       
  232.       /* EXPENSE ACCOUNT */
  233.       ResTypeAddProp("expense_cash_in_hand", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  234.       ResTypeAddProp("expense_spent_on_food", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  235.       ResTypeAddProp("expense_spent_on_hotel", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  236.       ResTypeAddProp("expense_spent_on_fuel", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  237.       ResTypeAddProp("expense_spent_on_mishap", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  238.       ResTypeAddProp("expense_spent_on_ticket", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  239.  
  240.       /* TRUCK */
  241.       ResTypeAddProp("truck_siren_loop_sound_id", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  242.     ResTypeAddProp("truck_siren_doppler_sound_id", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);       
  243.     ResTypeAddProp("truck_engine_sound_id", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);       
  244.     ResTypeAddProp("truck_engine_sound_id", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);     
  245.     ResTypeAddProp("truck_wiper_sound_id",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);         
  246.       ResTypeAddProp("truck_tire_life",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  247.       ResTypeAddProp("truck_chains_on",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);      
  248.       ResTypeAddProp("truck_tire_flat",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  249.     ResTypeAddProp("truck_seatbelt",        RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);         
  250.       ResTypeAddProp("truck_broken",          RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  251.       ResTypeAddProp("truck_light",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  252.       ResTypeAddProp("truck_running",         RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  253.       ResTypeAddProp("truck_wiper",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  254.       ResTypeAddProp("truck_battery",         RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);      
  255.       ResTypeAddProp("truck_speed",           RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  256.       ResTypeAddProp("truck_speeding",        RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);    /* 0 = not speeding, 1 = speeding */  
  257.       ResTypeAddProp("truck_cur_speed",       RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);           
  258.       ResTypeAddProp("truck_fuel_remaining",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);     
  259.       ResTypeAddProp("truck_fuel_to_fill",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);          
  260.     ResTypeAddProp("truck_trip_meter",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  261.     ResTypeAddProp("truck_radio_on_off",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM); /* 0 = off, 1 = on */
  262.     ResTypeAddProp("truck_radio_freq",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  263.     ResTypeAddProp("truck_radio_freq_cur",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);      
  264.     ResTypeAddProp("truck_radio_sound_id",  RESPROP_TYPE_INT, RESPROP_FLAG_STREAM); 
  265.     ResTypeAddProp("truck_tab_expanded",    RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM);
  266.       
  267.       /* WEATHER */
  268.     ResTypeAddProp("weather_temperature",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);           
  269.     ResTypeAddProp("weather_time_of_day",      RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  270.     ResTypeAddProp("weather_season",           RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  271.     ResTypeAddProp("weather_weather",          RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  272.     ResTypeAddProp("weather_precip",           RESPROP_TYPE_STR, RESPROP_FLAG_STREAM);
  273.     ResTypeAddProp("weather_precip_amount",    RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  274.       ResTypeAddProp("weather_precip_seed",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  275.       ResTypeAddProp("weather_precip_birthrate", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  276.       ResTypeAddProp("weather_sky_clarity",      RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  277.  
  278.       /* COMMODITIES */
  279.       ResTypeAddProp("commodity_number_of", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  280.       ResTypeAddProp("commodity_1", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  281.       ResTypeAddProp("commodity_2", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  282.       ResTypeAddProp("commodity_3", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  283.       ResTypeAddProp("commodity_4", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  284.       ResTypeAddProp("commodity_5", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  285.       ResTypeAddProp("commodity_6", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);      
  286.       ResTypeAddProp("commodity_7", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);      
  287.       ResTypeAddProp("commodity_8", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);      
  288.       ResTypeAddProp("commodity_9", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  289.       ResTypeAddProp("commodity_10", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);    
  290.       ResTypeAddProp("commodity_11", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);    
  291.       ResTypeAddProp("commodity_12", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);    
  292.       ResTypeAddProp("commodity_bonus", RESPROP_TYPE_RESID, RESPROP_FLAG_STREAM | RESPROP_FLAG_ALLOW_EMBED);
  293.       ResTypeEnd();
  294.     
  295.     ResTypeStart("GuiButton","GuiMiniMapButton");
  296.     ResTypeAddProp("scalemx"   , RESPROP_TYPE_INT, 0);
  297.     ResTypeAddProp("scalemy"   , RESPROP_TYPE_INT, 0);
  298.     ResTypeAddProp("color"     , RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  299.     ResTypeAddProp("mousedragx", RESPROP_TYPE_INT, 0);
  300.     ResTypeAddProp("mousedragy", RESPROP_TYPE_INT, 0);
  301.     ResTypeAddProp("mousedown" , RESPROP_TYPE_INT, 0);
  302.     ResTypeEnd();
  303.  
  304.     ResTypeStart("GuiTextInput","GuiLoadMessage");
  305.     ResTypeAddProp("commodity_to_load", RESPROP_TYPE_STR, 0);
  306.     ResTypeEnd();
  307.  
  308.     ResTypeStart("GuiAnimation","GuiPhotoDisplay");
  309.     ResTypeAddProp("last_photo", RESPROP_TYPE_STR, 0);
  310.     ResTypeAddProp("last_photo_type", RESPROP_TYPE_RESID, 0);
  311.     ResTypeEnd();
  312.     
  313.     ResTypeStart("GuiAnimation","GuiLoader");
  314.     ResTypeAddProp("state", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  315.     ResTypeEnd();
  316.     
  317.    
  318.     ResTypeStart("Gui","GuiSegmentController");
  319.     ResTypeAddProp("segment_number",          RESPROP_TYPE_INT  ,0);
  320.     ResTypeAddProp("load_watch_id",           RESPROP_TYPE_RESID,0); /* resid to watch when waiting_for_load */  
  321.     ResTypeAddProp("segment_direction",       RESPROP_TYPE_INT  ,0); /* forward = 1, backward = -1 */
  322.     ResTypeAddProp("segment_type",            RESPROP_TYPE_INT  ,0); /* begin = 0, middle = 1, end = 2 */
  323.     ResTypeAddProp("state",                   RESPROP_TYPE_INT  ,0); /* stopped = 0, running = 1, waiting_for_load = 2, starting = 3, pause = 4, paused = 5, unpause = 6 */
  324.     ResTypeAddProp("frame_number",            RESPROP_TYPE_INT  ,0);
  325.     ResTypeAddProp("repeat_number",           RESPROP_TYPE_INT  ,0);
  326.     ResTypeAddProp("adorn1_left_play_once",   RESPROP_TYPE_INT  ,0);
  327.     ResTypeAddProp("adorn1_right_play_once",  RESPROP_TYPE_INT  ,0);
  328.     ResTypeAddProp("truck_trip_meter_cached", RESPROP_TYPE_INT  ,0);
  329.     ResTypeEnd();
  330.     
  331.  
  332.  
  333.  
  334. /* TODO: for dash test, remove when done */ 
  335. ResTypeStart("Gui","WeatherCenter"); 
  336. ResTypeAddProp("season",          RESPROP_TYPE_STR,0); 
  337. ResTypeAddProp("time_of_day",     RESPROP_TYPE_STR,0); 
  338. ResTypeAddProp("scenery",         RESPROP_TYPE_STR,0); 
  339. ResTypeAddProp("weather",         RESPROP_TYPE_STR,0); 
  340. ResTypeAddProp("adornment",       RESPROP_TYPE_STR,0);   
  341. ResTypeAddProp("head_lights",       RESPROP_TYPE_STR,0);   
  342. ResTypeEnd();    
  343.     
  344.  
  345.  
  346.     ResTypeStart("GuiTextInput","GuiMessageText");
  347.     ResTypeAddProp("timeout", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  348.     ResTypeEnd();
  349.  
  350.     ResTypeStart("GuiAnimation","GuiFullscreenPicture");
  351.     ResTypeAddProp("timeout", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM);
  352.     ResTypeEnd();    
  353.  
  354.     ResTypeStart("GuiAnimation","GuiGasPedal");
  355.     ResTypeAddProp("pedal_state", RESPROP_TYPE_INT, RESPROP_FLAG_STREAM); /* stopped = 0, doing speed limit = 1, speeding = 2 */
  356.     ResTypeEnd();    
  357.     
  358.     ResTypeStart("GuiLayer","GuiLaptopController");
  359.     ResTypeAddProp("panel_to_display",            RESPROP_TYPE_RESID,0);
  360.     ResTypeAddProp("panel_being_displayed",       RESPROP_TYPE_RESID,0);
  361.     ResTypeAddProp("hide_all",                    RESPROP_TYPE_INT,0);
  362.     ResTypeEnd();
  363.  
  364.     ResTypeStart("GuiLayer","GuiTab");
  365.     ResTypeAddProp("rest_x",   RESPROP_TYPE_INT,RESPROP_FLAG_STREAM);
  366.     ResTypeAddProp("expand_x", RESPROP_TYPE_INT,RESPROP_FLAG_STREAM);
  367.     ResTypeAddProp("state",    RESPROP_TYPE_INT,RESPROP_FLAG_STREAM);
  368.     ResTypeAddExt("tab");
  369.     ResTypeEnd();
  370.  
  371.     ResTypeStart("GuiLayer","GuiMenuController");
  372.     ResTypeAddProp("panel_to_display",            RESPROP_TYPE_RESID,0);
  373.     ResTypeAddProp("panel_being_displayed",       RESPROP_TYPE_RESID,0);
  374.     ResTypeAddProp("state",                       RESPROP_TYPE_INT,0);
  375.     ResTypeAddProp("timeout",                     RESPROP_TYPE_INT,0);
  376.     ResTypeEnd();
  377.  
  378.     ResTypeStart("GuiAnimation","GuiCommodityViewer");
  379.     ResTypeAddProp("cur_commodity", RESPROP_TYPE_STR,0);
  380.     ResTypeAddProp("last_commodity", RESPROP_TYPE_STR,0);
  381.     ResTypeEnd();
  382.  
  383.     ResTypeStart("Actor", "GuiCommodityViewerActor");
  384.     ResTypeAddProp("com1",            RESPROP_TYPE_STR, 0);
  385.     ResTypeAddProp("com2",            RESPROP_TYPE_STR, 0);
  386.     ResTypeAddProp("com3",            RESPROP_TYPE_STR, 0);
  387.     ResTypeAddProp("city_name",       RESPROP_TYPE_STR, 0);
  388.     ResTypeAddProp("city_text_x",     RESPROP_TYPE_INT, 0);
  389.     ResTypeAddProp("city_text_y",     RESPROP_TYPE_INT, 0);
  390.     ResTypeAddProp("is_player1_dest", RESPROP_TYPE_INT, 0);
  391.     ResTypeAddProp("is_player2_dest", RESPROP_TYPE_INT, 0);
  392.     ResTypeEnd();
  393.  
  394.     ResTypeStart("Actor", "GuiCommodityViewerTruckActor");
  395.     ResTypeAddProp("x_scale_numerator"  , RESPROP_TYPE_INT, 0);
  396.     ResTypeAddProp("x_scale_denominator", RESPROP_TYPE_INT, 0);
  397.     ResTypeAddProp("x_offset"           , RESPROP_TYPE_INT, 0);
  398.     ResTypeAddProp("y_scale_numerator"  , RESPROP_TYPE_INT, 0);
  399.     ResTypeAddProp("y_scale_denominator", RESPROP_TYPE_INT, 0);
  400.     ResTypeAddProp("y_offset"           , RESPROP_TYPE_INT, 0);
  401.     ResTypeEnd();
  402.  
  403.     ResTypeStart("Actor", "MapCityActor");
  404.     ResTypeAddProp("dot",          RESPROP_TYPE_RESID, 0);
  405.     ResTypeAddProp("selected_dot", RESPROP_TYPE_RESID, 0);
  406.     ResTypeAddProp("name",         RESPROP_TYPE_STR, 0);
  407.     ResTypeAddProp("text_x",       RESPROP_TYPE_INT, 0);
  408.     ResTypeAddProp("text_y",       RESPROP_TYPE_INT, 0);
  409.     ResTypeEnd();
  410.  
  411.  
  412.     /* these are never modified so we don't need to release and reload them ever */
  413.     r = ResCreate("CSVData","CSVData");
  414.     ResPropSetResID(r, "adorn_id",       ResByName(StrFormatStr("csv_data/%s/adorn_data.csv",language)));
  415.     ResPropSetResID(r, "city_id",        ResByName(StrFormatStr("csv_data/%s/city_data.csv",language)));
  416.     ResPropSetResID(r, "commodity_id",   ResByName(StrFormatStr("csv_data/%s/commodity_data.csv",language)));
  417.     ResPropSetResID(r, "fatigue_id",     ResByName(StrFormatStr("csv_data/%s/fatigue_data.csv",language)));
  418.     ResPropSetResID(r, "ferry_id",       ResByName(StrFormatStr("csv_data/%s/ferry_data.csv",language)));
  419.     ResPropSetResID(r, "help_id",        ResByName(StrFormatStr("csv_data/%s/help_data.csv",language)));
  420.     ResPropSetResID(r, "hunger_id",      ResByName(StrFormatStr("csv_data/%s/hunger.csv",language)));
  421.     ResPropSetResID(r, "postcard_id",    ResByName(StrFormatStr("csv_data/%s/postcard_data.csv",language)));
  422.     ResPropSetResID(r, "route_id",       ResByName(StrFormatStr("csv_data/%s/route_data.csv",language)));
  423.     ResPropSetResID(r, "state_id",       ResByName(StrFormatStr("csv_data/%s/state_data.csv",language)));
  424.     ResPropSetResID(r, "temperature_id", ResByName(StrFormatStr("csv_data/%s/temperature_data.csv",language)));
  425.     ResPropSetResID(r, "version_id",     ResByName(StrFormatStr("csv_data/%s/version_data.csv",language)));
  426.  
  427.     ResParseEvent(ResByName("common/init_game_objects.c4"), "@init_game_objects");
  428.  
  429.     mark("floor");
  430.    
  431.     /* load the splash screen */
  432.     r = ResByName("splash_screen.gl");
  433.   }
  434. }
  435.